﻿if exists (select * from sysobjects where id = object_id(N'pBUGLOGTestCasesGet') and sysstat & 0xf = 4) drop procedure pBUGLOGTestCasesGet 
GO

-- Returns a specific record from the [dbo].[TestCases] table.
CREATE PROCEDURE pBUGLOGTestCasesGet
        @pk_TestCaseID int
AS
DECLARE
    @l_count int
BEGIN

    -- Get the rowcount first and make sure 
    -- only one row is returned
    SELECT @l_count = count(*) 
    FROM [dbo].[TestCases]
    WHERE [TestCaseID] =@pk_TestCaseID

    IF @l_count = 0
        RAISERROR ('The record no longer exists.', 16, 1)
    IF @l_count > 1
        RAISERROR ('duplicate object instances.', 16, 1)

    -- Get the row from the query.  Checksum value will be
    -- returned along the row data to support concurrency.
    SELECT 
        [TestCaseID],
        [TestCaseName],
        [Requirements],
        [Prerequisite],
        [ReprSteps],
        [ExpectedResult],
        [TestResult],
        [userID],
        [taskID],
        CAST(BINARY_CHECKSUM([TestCaseID],[TestCaseName],[Requirements],[Prerequisite],[ReprSteps],[ExpectedResult],[TestResult],[userID],[taskID]) AS nvarchar(4000)) AS IS_CHECKSUM_COLUMN_12345
    FROM [dbo].[TestCases]
    WHERE [TestCaseID] =@pk_TestCaseID
END

